package com.sc.nft.entity;

import com.baomidou.mybatisplus.annotation.FieldStrategy;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.sc.nft.sup.SuperEntity;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.math.BigDecimal;

@Data
@NoArgsConstructor
@Accessors(chain = true)
@TableName("sc_second_equity_props_config")
public class SecondEquityPropsConfig extends SuperEntity implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     * 权益道具Id
     */
    private Long equityPropsId;
    /**
     * 最小价
     */
    private BigDecimal minPrice;
    /**
     * 最高价
     */
    private BigDecimal maxPrice;
    /**
     * 手续费比例
     */
    private BigDecimal charge;
    /**
     * 最低手续费
     */
    private BigDecimal minCharge;
    /**
     * 状态 是否上下架
     */
    private Boolean status;
    /**
     * 排序
     */
    private Integer sort;
    /**
     * 是否为平台展示
     */
    private Boolean platformShow;
    /**
     * 是否为品牌岛展示
     */
    private Boolean brandShow;
    /**
     * 是否为企业展示
     */
    private Boolean firmShow;
    /**
     * 模板Id
     */
    @TableField(value = "panel_id", updateStrategy = FieldStrategy.IGNORED)
    private Long panelId;

    @ApiModelProperty("是否开启求购")
    private Boolean enableWantBuy;

    @ApiModelProperty("最低求购价")
    private BigDecimal minWantBuyPrice;

    @ApiModelProperty("最高求购价")
    private BigDecimal maxWantBuyPrice;

    @ApiModelProperty("单次最高求购数量")
    private Integer wantBuyQuantity;

    @ApiModelProperty("求购持有条件")
    private Boolean enableWantBuyHoldCondition;

    @ApiModelProperty("求购消耗道具")
    private Boolean enableWantBuyConsumeProp;

    @ApiModelProperty("求购持有藏品id")
    private Long wantBuyHoldCollectionId;

    @ApiModelProperty("求购消耗道具id")
    private Long wantBuyConsumePropId;

    @ApiModelProperty("求购消耗道具数量")
    private Integer wantBuyConsumePropQuantity;

}